{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import os\n",
    "os.chdir('../')\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 一.简介\n",
    "今天将介绍另一种简单的线性二分类模型：感知机(Perceptron)，它的要求比较松，只要能找到一个超平面将正负样本分割开就行！它的目标函数形式也简单：  \n",
    "\n",
    "$$\n",
    "f(x)=sign(w^Tx^*)\n",
    "$$  \n",
    "同样，这里$x^*=[x^T,1]^T$，$sign$表示符号函数，对于$t\\geq 0$,有$sign(t)=1$，反之$sign(t)=-1$  \n",
    "\n",
    "损失函数可以定义为误分类点的数量，但该变量不是关于$w$的连续可导函数，我们可以放松条件定义如下：  \n",
    "\n",
    "$$\n",
    "L(w)=-\\sum_{(x_i,y_i)\\in M}{y_i(w^Tx_i^*)}\n",
    "$$  \n",
    "\n",
    "这里$M$表示误分类点的集合，显然$w^Tx_i^*$与$y_i$始终异号；关于$w$的梯度非常容易求解，但感知机模型通常是使用随机梯度下降，即从$M$中随机选取一个点$(x_i,y_i)$进行更新，一直迭代直到$M$为空：  \n",
    "\n",
    "$$\n",
    "w=w+\\eta y_ix_i^*\n",
    "$$\n",
    "\n",
    "### 二.代码实现"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "class Perceptron(object):\n",
    "    def __init__(self, epochs=10, eta=None):\n",
    "        self.w = None\n",
    "        self.epochs = epochs\n",
    "        self.eta = eta\n",
    "\n",
    "    def init_params(self, n_features):\n",
    "        \"\"\"\n",
    "        初始化参数\n",
    "        :return:\n",
    "        \"\"\"\n",
    "        self.w = np.random.random(size=(n_features + 1, 1))\n",
    "\n",
    "    def fit(self, x, y):\n",
    "        \"\"\"\n",
    "        :param x: ndarray格式数据: m x n\n",
    "        :param y: ndarray格式数据: m x 1\n",
    "        :return:\n",
    "        \"\"\"\n",
    "        # 设置学习率\n",
    "        if self.eta is None:\n",
    "            self.eta = max(1e-2, 1.0 / np.sqrt(x.shape[0]))\n",
    "        y = y.reshape(-1, 1)\n",
    "        y[y == 0] = -1\n",
    "        # 初始化参数w,b\n",
    "        n_samples, n_features = x.shape\n",
    "        self.init_params(n_features)\n",
    "        x = np.c_[x, np.ones(shape=(n_samples,))]\n",
    "        x_y = np.c_[x, y]\n",
    "\n",
    "        for _ in range(self.epochs):\n",
    "            error_sum = 0\n",
    "            np.random.shuffle(x_y)\n",
    "            for index in range(0, n_samples):\n",
    "                x_i = x_y[index, :-1]\n",
    "                y_i = x_y[index, -1:]\n",
    "                # 更新错分点的参数\n",
    "                if (x_i.dot(self.w) * y_i)[0] < 0:\n",
    "                    dw = (-x_i * y_i).reshape(-1, 1)\n",
    "                    self.w = self.w - self.eta * dw\n",
    "                    error_sum += 1\n",
    "            if error_sum == 0:\n",
    "                break\n",
    "\n",
    "    def get_params(self):\n",
    "        \"\"\"\n",
    "        输出原始的系数\n",
    "        :return: w\n",
    "        \"\"\"\n",
    "\n",
    "        return self.w\n",
    "\n",
    "    def predict(self, x):\n",
    "        \"\"\"\n",
    "        :param x:ndarray格式数据: m x n\n",
    "        :return: m x 1\n",
    "        \"\"\"\n",
    "        n_samples = x.shape[0]\n",
    "        x = np.c_[x, np.ones(shape=(n_samples,))]\n",
    "        return (x.dot(self.w) > 0).astype(int)\n",
    "\n",
    "    def predict_proba(self, x):\n",
    "        \"\"\"\n",
    "        :param x:ndarray格式数据: m x n\n",
    "        :return: m x 1\n",
    "        \"\"\"\n",
    "        n_samples = x.shape[0]\n",
    "        x = np.c_[x, np.ones(shape=(n_samples,))]\n",
    "        return utils.sigmoid(x.dot(self.w))\n",
    "\n",
    "    def plot_decision_boundary(self, x, y):\n",
    "        \"\"\"\n",
    "        绘制前两个维度的决策边界\n",
    "        :param x:\n",
    "        :param y:\n",
    "        :return:\n",
    "        \"\"\"\n",
    "        weights = self.get_params()\n",
    "        w1 = weights[0][0]\n",
    "        w2 = weights[1][0]\n",
    "        bias = weights[-1][0]\n",
    "        x1 = np.arange(np.min(x), np.max(x), 0.1)\n",
    "        x2 = -w1 / w2 * x1 - bias / w2\n",
    "        plt.scatter(x[:, 0], x[:, 1], c=y, s=50)\n",
    "        plt.plot(x1, x2, 'r')\n",
    "        plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 三.校验"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "from sklearn.datasets import make_classification\n",
    "data,target=make_classification(n_samples=200, n_features=2,n_classes=2,n_informative=1,n_redundant=0,n_repeated=0,n_clusters_per_class=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x2b52b6c7048>"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x2b5286d28d0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(data[:, 0], data[:, 1], c=target,s=50)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "#训练模型\n",
    "perceptron = Perceptron()\n",
    "perceptron.fit(data, target)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x2b5286d2668>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "perceptron.plot_decision_boundary(data,target)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 四.感知机的另一种实现-对偶形式\n",
    "如果初始$w=0$，根据上方参数更新公式$w=w+\\eta y_ix_i$，可以知道$w$其实是$\\{y_1x_1,y_2x_2,...,y_Nx_N\\}$的线性组合（$N$表示训练样本量），所以$w$可以表示为：  \n",
    "\n",
    "$$\n",
    "w=\\sum_{i=1}^N\\alpha_i y_ix_i\n",
    "$$  \n",
    "\n",
    "所以对于原始优化变量$w$的求解，改变为对优化变量$\\alpha=[\\alpha_1,\\alpha_2,...,\\alpha_N]^T$的求解；原来对于误分类点$(x_i,y_i)$的参数更新公式$w=w+\\eta y_ix_i$可以换成：  \n",
    "\n",
    "$$\n",
    "\\alpha_i=\\alpha_i+\\eta\n",
    "$$  \n",
    "\n",
    "下面就简单对对偶形式进行代码实现，并嵌入到`fit`函数中:  \n",
    "```python\n",
    "def __init__(self,...,mode=None):\n",
    "    self.mode=mode\n",
    "    ...\n",
    "def fit(self, x, y):\n",
    "    if self.mode=='dual':\n",
    "        self._dual_fit(x,y,epochs,eta)\n",
    "    else:\n",
    "       #继续原始的代码\n",
    "       ...\n",
    "```"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "   def _dual_fit(self, x, y):\n",
    "        \"\"\"\n",
    "        模型训练的对偶形式\n",
    "        :param x:\n",
    "        :param y:\n",
    "        :return:\n",
    "        \"\"\"\n",
    "        y = y.reshape(-1, 1)\n",
    "        y[y == 0] = -1\n",
    "\n",
    "        n_samples, n_features = x.shape\n",
    "\n",
    "        # 初始化参数\n",
    "        self.alpha = np.zeros(shape=(n_samples, 1))\n",
    "\n",
    "        x = np.c_[x, np.ones(shape=(n_samples,))]\n",
    "\n",
    "        for _ in range(self.epochs):\n",
    "            error_sum = 0\n",
    "            indices = list(range(0, n_samples))\n",
    "            np.random.shuffle(indices)\n",
    "            for index in indices:\n",
    "                x_i = x[index, :]\n",
    "                y_i = y[index]\n",
    "                # 更新错分点的参数，（注意需要有等号，因为初始化的alpha全为0）\n",
    "                if (x_i.dot(x.T.dot(self.alpha * y)) * y_i)[0] <= 0:\n",
    "                    self.alpha[index] += self.eta\n",
    "                    error_sum += 1\n",
    "            if error_sum == 0:\n",
    "                break\n",
    "        # 更新回w\n",
    "        self.w = x.T.dot(alpha * y)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "#测试\n",
    "from ml_models.linear_model import Perceptron\n",
    "perceptron = Perceptron(mode='dual')\n",
    "perceptron.fit(data, target)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXYAAAD8CAYAAABjAo9vAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvNQv5yAAAIABJREFUeJzsnXWYXOX1xz/njs9KdjcCwb0lBYqkuBeKQ3EtrsXKr0ALBYq7e1McAikUJ1AILsUS3F3SEGF3k91xuef3xzubrIyszO6svJ/nmSeTufe+98zOzLnvPe853yOqisVisViGD06lDbBYLBZLebGO3WKxWIYZ1rFbLBbLMMM6dovFYhlmWMdusVgswwzr2C0Wi2WYYR27xWKxDDOsY7dYLJZhhnXsFovFMszw9nUAEQkCLwOB3Hj/VtW/FztmzJgxutxyy/X11BaLxTKimDFjxs+qOrbUfn127EAS2FJVIyLiA14VkadU9Y1CByy33HJMnz69DKe2WCyWkYOIfN+d/frs2NWIzURy//XlHlaAxmKxWCpEWWLsIuIRkfeAucA0VX2zHONaLBaLpeeUxbGralZV1wSWAtYVkdU67yMiR4rIdBGZPm/evHKc1mKxWCx5KGtWjKrOB14Ets2zbZKqTlTViWPHloz9WywWi6WX9Nmxi8hYEanLPQ8BWwGf9XVcy8hFVdHsPNRdUGlTLJYhSTmyYsYDd4qIB3OhuF9VnyjDuJYRiBufCq2XgNsMuKhvAlJ7LuJbtdKmWSxDhnJkxXwArFUGWywjHDf2GLScASQWvZh+H23aF0Y/gniXq5RpFsuQwlaeWgYFqi5ELqaDU1+4MYlGbhxwmyyWoYp17JbBQfZHcKOFNkLypQE1x2IZyljHbhkciBdwS2y3WCzdwTr2EYBqCrf1Otw56+HO/gXu3E1xo/diioYHCc4S4FmiwEYfBHcaUHMslqGMdezDHFVFm4+E6D9BmwEFdza0XoK2nFNp8xYiIsio84Bgpy1ecOqQqiMqYZbFMiSxjn24k3oT0u/RdVEyDvEH0cyPlbAqL+JfFxl9L/g3AYIgtRDaCxn9KOIZXWnzLJYhgw1cDnM08RRovPAOyRfAe+DAGVQC8a2GNNxaaTMsliGNnbEPe1wKi20qRRcsLRbLkMQ69mGOBLcGCRfaCoHNBtQei8XS/1jHPtzxbwzeVTANrtoThODvEO/ylbDKYrH0I9axD3NEHKThTgjvBRICvGZRsvooZNSllTbPYrH0A3bxdAQgEkJqz0RrTjcLqRJGxF7TS6Hpj3OLzykksBn4N7B/N8uQwDr2EYSIB6S60mYMelRddMGpkHgGSAEuGr8fPCtBw52IU1VpEy2Wotjph8XSCY1NgcQ0TO6/2/YiZD5DWy+opGkWS7ewjt1i6UzsViBf7n8K4o+jmkeB0mIZRNhQjMXSmWyxnrximoB4xg+YOZbeoe4CU3mNgH99xKmptEkDhnXsFktnPOMh+22BjQJOw4CaY+kZqopGroXoLSC+3IsZtPp4nOqRoTlkQzEWSyek+igglGdLAEK7I9K5JsAymNDYFIjeBiRBI+ZBAiLXo/GR0bXTOnaLpTPBXSG8B6aoywd4TA2Afx2k9i8VNs5SDFWF6A3kXyOJo5FrBtqkimBDMcMc1Qy4TeDUItJZEteSDxExef/hgyA5DTQFgY0R3+qVNs1SCo2D21h4e/Z7VBURGTibKoB17MMU1SwauQ5id4GmAUWD2yC1ZyHOqEqbNyQQ7zLgPazSZlh6ggQwbi1bYHvVsHfqYEMxwxZdcLqJM2oESAIpSPwHbdwb1VSlzbNY+gURD4S2x4TQOuOD0O4DbVJFsI59GKKZHyHxJF2ba6QhOztXfDN8UY2j2Z+6dQFTN4YbnYLbdChu8zFo4mkTvrIMWaTmtFybxXYL4BIG73JI9Z8qZtdAYkMx3USTL5nQRuYrkFEQ3g+pOgQRf6VN60rqvxS+ZsfQxDNIaIeBtGhAUDdi2v0l/gMIIGh4T6Tm1Lyfk2bnoY17gDuftsU2Tb0O3gnQcEfRz1bdCGQ+BakC76oj4vZ+qCBOHYx5DOJPoPHHQRwktAsEtx8xGU3WsXcDNzoZWi9l4Uq7xiByA5p8CRruQmSw/Rl9IFK4v8ZgvBj1EdUs2rQfZL7B6LvkiN2PZn9A6id1PablLHDnAe1m6BqD9Edo9Dak+ug853HR1ssgdk/u75g1F/q6yxH/b8r+viy9QyQE4T2R8J6VNqUi2FBMCdSNQOsldE2fSkDmE0g+VwmzihPYDLTQ4lEYCe08sPYMBMmXIfsDHZw6AAlIvoGmP+vwqroRcwz5wi4JiE3OexptvQJi92JypFvNhcD9CW0+HM18XYY3YrH0HevYS5F6DQrNyDWGxh8eWHu6gXhGQ94imyD4fg3+jSphVr+iyReMk81L1nyOHQ5ooegNq9vS9RxuFGJ3kzdHWlNo5B/dNddi6VcGWwxh8KFp0EIxDUCTA2dLD3Cqj0M9y6ORG8xM1qmD8B9y6wLD8Houfsw8JV8PV4cuWRLOWBBP4XCVd8Wur2W+Mhf5vMdkIfVWDwy2WPoP69hL4f8NkC6wMQSBrQfSmh4hoR2G5SJpPiS4Ixp7gPwVh0Bwq477iw8NHwzRfEqOQaT6+K5jONWFQ1xt2y2WQcAwnLqVF/EsBqFd6RrW8IAzyqy2WyqP79e5xtydP6eQuVPxLNHlEKk+DkK7AH6gymS4EISak5HgFl3P4VkBPIsVMCAIoX379BYslnIhWizM0E9MnDhRp0+fPuDn7S2LqjjvBFzQDPg3Qkadj3jGVdo8Sw7VLBq7D2K3QfZn8CyJVB8DwZ2KpiNqdg6k3jZKgP6NkCIzb01/gDYdaGQGFi68hsD3S6Th7sGZ/moZNojIDFWdWHI/69i7j2rKpMdJ7YjSdrZ0RDM/otHbIPWqaTUY2gcJ72qduqXf6a5j73OMXUSWBu4CFsesXE1S1WEpoSbiB8+SlTbDUmHEuzQy6u+VNgMAzc6F9HumstK/rr24WIDyLJ5mgD+r6jsiUgPMEJFpqvpJGca2WPoF1SSgQ1bxUjVtCqzij3coONPai3BC21TQMstgoM+Lp6r6k6q+k3veCnwK2GmtZVCi6Y9xG/dF56yJzlkL9+fd0NSMSpvVY7T1YohPBVKLmkloBBacgqY/qLR5lgpT1qwYEVkOWAt4s5zjWizlQNOfoo37QXoGRtY1C5mP0KZD0NTQWfNRNwKx++kq8gaQRCM3DbRJlkFG2Ry7iFQDDwJ/UtUuZXsicqSITBeR6fPmFWsWbLH0D9p6Gfnz3BNoywUDbU7vyf6wqJdnFxTSHw6oOZbBR1kcu4j4ME59sqo+lG8fVZ2kqhNVdeLYsWPLcVqLpWek3ii8LfMZqgWKmwYbzqhc85Qi28uMqou6zbm1CctgpxxZMQLcCnyqqlf23SRLd1BVNP4gRG+C7Cxw6iF8IFJ1GFJwNjfSKSWt23fpXdUMJJ9Hk6+DU4OEdka8K/V53PaIZ0nUu5IRoeuibxCC0B/Kdi5VRWN3Q+QmI3qGooEtTScuj52gDVbKMWPfCPgDsKWIvJd7bF+GcS1F0NaLoeU8yP4IZMH9GSI3os1HU4nahCFBYBMKOm/fGn3OkNFsI/rzduiCv0B8MkT/if68G27LRWX/TKTuCpBaoJ3NEgb/2kh4j7KdRyPXQOsVoI0Y5cw0JJ9DG3c3sX7LoKTPM3ZVfZVyTHWGKZr+ENIfmxl1YPOyCP1rdtYi6dgOJMzCYOotCKyX23c22nolJJ82FbO+tZGaP4NnaTMTS0wz6XKh3ZDwHoiEULcFEs+ALgDfGuCbOCwaSUjNyWjqzZwKZHtHG0Jq/9bn8XXByZD9H4sqUnMLtLEp4J8IwfLpCol3BRj7NBqbAskXQWqQ8F4Q2Mq0hysD6rbktHQ6f88y4C5A4w8iVQeV5VyW8mJFwPoJdZvRpiMg+6VRhxQPIFB3NRLYtG+DJ56n4LVU42hiKhJYD83OQX/eJSdRmxOvSr+JNv0B89GnWahf3vo1GrvXCGO1np9TPkwZp+9ZxnQUchr6ZncPUHVNSCN2n+lwFNgACR+AeBbv9ZjiXQlGP2AWUZOvAGqKempORXy/6pu92TmQmk5+ffc4Gr0VKaNjBxCnAan+I1T/sazjLiQ1wyzS5o2rxyHxFFjHPiixjr2f0OY/5mKguR+6tr1+PIx5HPEu04fRXfLL07adyDhxjdyci4t2ViRMkne2n/0BWs82+7dNaDUDma/R5uOR0fmbT5QbVRedf4Ip2W/TWM98jsYmm45VvtV7PbZ4V0Lq/7EwNFK2O5Hs7CJOkNxMfohRUt7Zuo/BilV37Ac085UJv+SdvWXQ2F19G9+zPAWlhCWMBHIStYknC9hQiDRdLwK519Mfopnv0eSLuI374c7dCLdxz1zz5zLH9JNPmxl1h8YZKdAoOv/EspxPREo6ddUkGn8Ud/6puC3no+mPC+/sWSonDFYA7/K9tLSC+Nct0okrhIR2HVh7LN3GXnL7g8yXRRoypPuUZ6yahJZTKdghwrMcLAz1FJrV9wLxGYXLxDQW5oK789AFp0LoHaT2tLKdSqMFuhQBuE2mibRvQtnOl9eG7Gy0cS8TxtIY4KCx+9HQbkjt37tcFMQzGg1smmu319nBh5CqI/vV3v5AJITWnJprDdm+GMoPnqUhtGOlTLOUwM7Y+wNnLEU6SYNnfO/HTvwHCuZbe6H66EWLZ4HNKdtHrGkTU+3scDUOsfvMXUq5cJuLbPSU2F4edP5JRslz4V2DCyQg8TAkn8l7jIy6BLy/MNkpOEDAPKqPRQIb97vN/YFTtT9Sd6V5X3hN4+6qA5GGKWVJBLD0D3bG3h/41gapAY3m2RhEwgf2emhNvVekt6eLZL5Z+D+pPg5NPpvHDi9m8bVzOKdNTKrzjNMx8rRdC4pzpNH4E0jNn7rxDrqBfx2If0fesJAmwfvL8pynAJqdBemPCpw/jkZvR4JdhbbEqYHR/4b0dLOQKlUQ3MY0axnCSHArpFMHKsvgxs7Y+wERB6m/2Tj3hXnGjnledTDiX7v3g3vG0qV/50IC0C5zRbzLIg33g29djDP3gmdZqLsOqo8FQsZhS7WZiY26DKqPNuO0XfMlbMYM7UjheH3WCFCVCak6jEUXmU7vL7idadbdn2TnFinZxyyUFkBEEP9vkOpjkKoDh7xTtwxN7Iy9nxDfBBj7HBp70MzgnHFIeG/zel/GDf2+iMiTC8FtO9mxMjL6HtSNAWnTJEQE+K1JbUx/aJyYbw1EzNdBg9uh8YfAbUR860Joe7N4Gr8//92CVCH+Dfv0vjoM510e6m8y4RBSgJiFyeBvkVHnl+08BfEsXbxJeZkrSS2WcmMdez8iTh1SfRhwWPnG9CyRW9C6DOP0XMAD+KD2fMSpK2BLOP9ruUKmDq97V0RqTunwmvomgmdFyHxGxxCOF5zFcv1Gy4cENoRx/zUFV24L+FbrUw57j8j+WGRjEKk+amDssFh6iXXsQxCn6g+ofx2TNpn5FryrIFUHlV2TpD0iAg13ogtOg+QLpnBJ0+BfH6m7pM/VjupG0fgjkHzOpGyGdjOVuv51y/QOumtHE9p8CPnTSQWqT0X8vxlQmyyWnmId+xBFfBOQURcP7DmdaqT+OtRtguxP4CyGeMb0eVyTWrgHuK20Zd1o8lXwrwX1kwZU1ExjDxbO3SaI+H8xYLZYLL1l2C6eavoT3OZjcedugDtva9zIrajma0xg6SniNCC+X5XFqQPmLsD9mY6plDFIzUBj9/Z+3Mw3aGwyGnsAzf7cvYPS75O/gQWAC5kvem2PxTJQDMsZuyZfQZuPxZTNK9AIkWvQxFQYfZ/Nvy0Tqi6kXkVT7yFObS5jpWdZIOo2Q+pt8hdTJSB2d4/1SFRT6Pw/G3EsMKXxLeeg1cfgVB9b/GDPkpifRZ4MIPGCU56LmcXSnwy7Gbuqa2RTSdCxSCgBma/Q2MMVsmzooG4EN3oH7s+7m0f0ji4SrUaidnuj6RK9Hm29Ap23FW70jp6dzG0unlrozu+5/a1XQPIlFmriaBxIQWQSmni66LES3guzGJ13KwS26LE9FstAM+wcO5mPilRmJiB+/4CaM9RQtwn9eSdovRIyH5pH65Vo484mtg5o5ju0cU/Iftsu/THnRFuv6llzaM8SFJU+8K7SM/s1CfEp5A+nxNHIjUWPF++KUPNnTP1Bm4P3G22UupsQyZdfb7EMLoZfKEYTFJWHHyrtzyqEtl4C7hw6hiISkJ2NtlyKOjUQu4+u1amL9tXorYh/nW6dTySIhvaD2GS6OuMgUip00plsiX662e9LDuFUHYz6NzKSwdmZJtUyvA/iGdczWyyWCjH8HLt3gpGazYuvnUCWpTOqCvGpFFKlJPEopiK0iIohCu1kDbqD1PwZdRuNGqX4MAVJGag5HQls1KOxcOqKZLXQoTK3qE2+lZFRZ/Xs3BbLIGHYOXZxqtHwgWbRrbNglQSQqkMqYtdQQDVGcaedpaDqYns8y/bovCJepO5SNHuSWUiVAPg3RpyqHo0Duc8/sKXJh++Six6E8MElx9DsbDR2DyTfBKcOCe8LgS2GRRepSqJuBI3eBLEHjH6RdxWk5kQksHmlTRt2DDvHDiA1/4c6gVxbr9zsz7s8MurSgateHIrEHyyxg1BYtbKNEFJ1aK9OL57xENq5V8d2GGfUOWjj5yakpDFAQEKmmCq8X9FjNf0B2nSQKb7KXeQ0/Rb4N4e6q5CSzScs+VBNok37QOY7Fk4eMh+jzSegtWfghPeqpHnDjuHp2MVBqo9Hq46EzPfgVCOeJSpt1uCnVM64jAYtlg/uh+pjkDwyBQOJOPUw5nFIPIsmnzd3AMGdQFNo87GoOw/8ayHhgzp0slJVtPmErmqYGjepk8lpkEfV0VIajT0KmR/pekeYgNYL0dDOfW4mblnEsHTsbYgEwNezrIoRjbYW2eiD8P4QnUTXcIwDnlWQ+hsQ79L9aGD3EfFDaHsktL1x2C1nQuLxRYvnmc/R2L+h/mYksEHutY9BC6VXxtHY5Lxyve3RzFdo9F6TMeT9BRLer49tEHuHZhvR6D8g8YS5Yw1silQfawTWejumKqTfQZP/NdXAwW26P17iYQqH8RzTX7Wn6ymWggxrx27pIb41IPk8+cMtXhOfdmdD/BHMzEvN654VkNH3Ik513mFVU4CvcjHq1BsdnTpg4u9pdP6JMO6/RtnSnU/hHHZM96YiuLH7oeV8FrYYTL1pGoSPuhwn9Lu+v49uotmf0cZdcu8nt86QeMJo8zfc2yuFUdU42nRY7uKXQPFA5AY0tAdSe1bpz7ZgQkMbBVo9FhvSbTUtKCUEvtVtmKwd9i9hWYhU/xGjxd6ZIIT3x/FUIYEtMQ697YeskP0eTb7U4QhVxY39G3fu5uicNdA5a+AuOBN1CzXr6D80dl+RNNc0pN40T72/KCLX6wVf4RROzc6GlvMwKZttWTkZ8/8FJxsnNEBo5Ppcl6n2ztIFjaEtf+/dmC3nG4lnjWM+/wyQhPhDkHik9ADBbcn/3cKsZxT523bZXV3clovRuRui849Fmw9C521s9IUsgHXslnaIb3XTBk1qFzXgwA+h3XIpia3o/D+xSC4YjBNLwoK/dtBj0ehN0HoeuLNy+xonoI17Drxmj1tcJ0bTX5pG1U4NBLcmvwPyLcyo0tTbuI17485eFXf26rjzT8n1aS2wsCySays4QCSeoGBTlPQnaA+reVXjEH8MU4TWmTgamVRyDAnvCU4tXV1OCKoON92numtP5OpcLUXShA81Bu7PZv0k/Vm3x+kNqkk09ZZ5FNPsrzA2FGPpgAS3gsDrkHrH/GD8v0Zyud8af7JoYozGH0WqDzOz8shNdHUEadN9KD4Vwrv359voiH9dSH9A3lROjUHkCjTqA7IQOsj0im2TJkYBP1J3NeJdDk2+jDYfx6JiqmzOkXrzjw/mLsBtLPvbKkyxsEauaUlPyDYavZ1CCVHurNJjSA2E9sqt0bRNCnKL7VXd17dXjUPsTvLH65No5Gak/upuj9cT3OhkiFxO+7tVrT4Zp2r/fjlfX7AzdksXRHxIYD0kuMVCpw6AO7dISCNppHzBxLQL6r/E0fhj5TS3JBLer4g9ipn5RXKNuW8Bz5LI2GmmOXXdtTD6AfCvZRZhF5xF1wrZLGaGXGCeJKF+79PaAd9vKFh97TTkmq33AKcBtIjsg1M6hVhbL4bobXQJD8X/Tf47gQJkvqHwOohrupX1A5r4D7ReYjKmNJJ7RKH1EnQg78a6iXXslu7jXdk0aM5LGPGtmnteYiFtgBdRxTMOqb/DdHqScC7EVOirn4HYbWjmf2jiWWj+IzTuhM5ZF51/cpGZd5a8za9xTGhrACuepeYkFvXabU8Qav7S40VsccIQ2oG8fWglBFVHFD1es405yYjOk4KMkYCIT+2BMTXFF2Kl+yGdnqCtV5BffyiBtl7ZL+fsC9axW7pPYEvzQ87nuMVneqMC+NfPFfjkQUJIsO9FSD1F/L9Gxr6E1N+OjLoMnBK6L80HQ2Iqi9QhE5B8mqJhDqk1s1epyl1AwuBZBmm4p88dpnqC+H6FNNwCnhUw6wUhM0uvPR8ntEPvxqw5E3yrmvcEmFlzEII7IqHiYTVNPEvhv1scTTzZfTu8y5ietHkJQnjfbo/VXVQzkP2h8A7ZH9BC3/cKYWPslm4j4oeGe9Cmg3OLVlkQj3HW9bciEjL7OTVo9TEQ/Uen0I0PnPG52V8l7HdMVyZAI1eZ1M2C5ItDF4tNe40efe3ZRhYh+z/wLge+tSqS5in+3yBj/4NmfzIXWc9SfUoHFKcKGu6H1Fto6hUggAS3RXwrlz448RjFK5Z75oak7nK0af9cBlPOoUooVzewT4/G6h65nsIFP38fg82VDi5rLIMe8a4AY1+E1OuQ/Q48Sxldl04zUqf6j7jOeIhcm1tcC0BoV6Tmz4Oj0UloL2g9vxcHOrlH+3CAkSyQ6qOM86xw5W17xDO+fGOJQGC9HlUWq7qQfq/4Tj2UkRDfqjBmKhq9HZKvgFOFhPaG0C79IqssImhw+wLZRl4Ibj/odIREtZT2R/mZOHGiTp/eP4sclsGHagbwDKovv2oSnbthiWrbfPgguDOkZxhJXxT8GyC1Z/apqnO4oppC56xBUc39ce/jOKEBs6k3aLYRbdwtV6TWttgbAKceGf0w4hk9IHaIyAxVnVhqvxE7Y1e3FRJPotk55nYy8FvbRKGfEBl8XzORAFr/T2g6gK6zMD/FFkOl+hjEu4zpKiU+M1ZmJhp/GCQI/k0KVuGONET8qGepwjFqZ5lB79QB47jHPIHGpuRm7pj1hfA+PcrBHygG3y9uANDki2jzibmc7DgqVeYH2XA34l2p++O4C0y+sybAv56dsQ0hNDsHYv9q94qDWWjMmtCAJiHxLB0zOUIQ3muh9os41aimcOefZPYVDyZPPIvW/g0nvPeAvZ9BTfVJsOA08jZSqT2lEhb1CnFqkOojoLp4FtBgoCyOXURuA3YE5qrqauUYs7/Q7Bzj1IkvWs/RqCm3bjoYxr7UrQwGN3ontF6OWVhxAUUDmyJ1Vw2Lmb8mX0cj10D6E5MJEd4DqTp6WMxE1W1CG3fNld23zcpdIAO15+GEdzO9c30PmLz27FzwLIFUH23CMO3Har0EEs9hsmfabWi5APUsiwTWH5g3NYhxQjvgus254p62BVyF6lNKiqpZekdZYuwisikQAe7qjmOvZIzdbb3OZGvkW+GWKqTuGqREzrEmX0Wbj6VrXm4QQrvijDqnXOZWBDc+Nc8Myw+epZExDy3MfhmquK2XQfQO8qbgySgY+wqOU1pCVt0YOnd98uc3A/71cBru7oupwwrVJKRyC6n+NQfHIvoQo7sx9rLksavqy0Bx6bvBQuZLCpd+Z3KNAIqjkRvIX9KcgPjDqBvNs21ooJqGlr/T1VmlIPs/NFaqGUf7sdycsuMgIz6VgnnVugDmbdBF1Cwv2f/lwi8FSH/RK/OGKyIBU9EcWM869X5mwAqURORIEZkuItPnzSvRcLg/8a5I3go6APEWKX5oR+brwtvEA+5PvTJtUJB+j8IZDAmj5lcCzTbizj91karjvK1w490vQul/imRoAGjUdPYp0btVpb6IGiTgNBi5W3c+lcg+s4xcBsyxq+okVZ2oqhPHju2hVkUZkfBeFH7bAQhsUnoQZ0zhbZrudsPkQUkfdbPVbTXx68QTLFSBzP4AC/5qRJQGA4GtKb28lEKjtxXcqqoQvYrCFwkzI9U566BzN0LnbY4bf7w31losPWbESQqIZzyMuhSjpdF2OxgGqUUabuteal74YCBfnNkD/nU7CmcNNXxrFHHuAQgUbxihsSm5RcnOYyQgcvmgkDqV6iOKaN60kYX442j8cVQ7pj268SfQeRtD/AEKO/aM6aJEBkibu7gFZ+B2yMSxWPqHEefYAZzQtsjYF6D6/yB8EFJ7BjLulW53lpHw7kbUScIs1E2RMDiLGUXAIYw4VVB9NF0vXA5IGCklUZp4gsJqfbJo8ayCiGdxGHUlRbslARBHW85E5x+z0Lm70TtgwengFgsnto3b2enHofWygroimv4Id8FZuM3H4EZu7bFuel/QzHe4LefjNh6E23IRbnbBgJ3bUn7Kle54H7A5MEZEZgJ/V9VbyzF2fyGe0Uj1Ib07VjxGzjX1Fpp4CNwYEtwCgjsMi0UhqToGlRqIXG/0ynHNnUjtud24Gxlcyo4Fab2Q/AVIndAYpN6CxNNocAuIXEXBLJiFmPTX/GQh8wX4ftXxiJbLIXYXC8NXydfQ6I3QcE871cwiZqqbq4adC96VkR70+nUjt0HkUhZeiNKvQ+wO3JqzcarKL6pl6X/K4thVdcR9+r3RzRgqiAhS9Qc0vJ/pPiRV3c9fD+4EkW/I7/wUfGuW09ReoekvINuN5hALD4ihsXsRp47Ss/ySg9H5RllTb0Psbjr+zRKmt2jzMTD2haJyDJr+BG0+epE8gmZR3y+Q+n+UvBBr+lOIXEbXuwuF1r/j+tfC8Q2glrylLIzIUIyle4h4EM9iPSpKkvBe4NSTd84gY8xYpTsIAAAgAElEQVRstdK480wGVE/Q+ZS8GwHAD86SFM68Cpvequ2HjnZ26p3OW0RES90FaNMfjFKlRs2DBKTfR+dujrvgfDQzs/Dx0TspeufScnHhbZZBi3XslrIiTg0y5mEIbNx1o/s92ri/6S9aSbwr9rA9nA/8G+Qkf4uFbzwQ2AwaJucyozpfPIJI7Tld5XOzP1E4dOMUjedr/KHC2vckID4ZbdzR3BXko9SFNvNJ8e1DGHWjaOptNPV+lwXyoY517MMcdWO4rZfizlkHd/YvcOdtjRvr39Z04jSAW0g1MW7apFUQ8Syeu/B0U/pBfEj4IESCUH0KXbsTeUwK7OgncepvwPGOR8Y8AqHdc9k3XvCtidT/Ewlu3XV832oUjIpq2nSuKkTqHYrH/LMmlDT/hPzOq9PdQxecUcW3D0FUFbf1GnTuBmjzUWjzwei8jdDEC5U2rWxYxz6MUU2bhgTRu3PxV4Xs99ByJm7kxn49L+l3C++Qetss9lUQGXUZ+NfGOOlQrutRCHzrAwHTPk/C4IxH6u9AvEsB4FQdgNRdCp7lMKGZnM78mCdwfItE4MRpwBl1Hs5i7+Is/gnO6PsLrsdI1UHkd+w+8K1RXFzOGUe3fsaagPQ7Xc9d/UcKh5gEwoeVHnuIodFJELsNs46R613qNqHzT0TTH1TavLJg9diHMW70vlz2R770wwAy7lWkH2Zkqhl0zmoUzvF2kMU+6VNHn3Kh6S8g/T44pi+pSAh1myD9mZmteicUXLgsp868Jl9E55+U+09uZu37BdSchWQ+BglAYHPEqe9k/2do416UztQR8K6FjDoH8XWcpbuROyFyQdf9fWvm2voVagQ+9FBNGX0fjeTZKuDfDKdh0oDb1V2sHvsQx3VdZn09B4/XYfHlxvXIebiZOdB8BGQ/K7yTeCH52qI+pWXFAakHLdD42b/eoHDqgEkLbJcaqKpGA0bjIEsU/buXU2deApvDuDcg+SK481HvLyF6GzTth+JgZtVnodV/wqleNIsW3y/R6iMhMonizl0h8665CNTfhAQ2XLjFqT4IN7CpmQRkPjGfXdXhSGjHQaml3yeyMyk84dDid5pDiGHxqWm20bRqEw/4N+yXWehA8vyUV7n5pDuJR+KoqzSMr+dPNx/J2lutUfJYTb0PTfvQrRztUpopvUSjN4IW0YQLbNcv5+0rmv4SnX+MSfFUARKo1ELwd0j4Dz3KDe8NIgHIydhqywVG67/z3VbkWtS7PBLccuFLTvVxqH8TE2JIPkdRx0UcXXAqjH25w8XV8S0PDf8s6/sZlEh1cdmMkhXJQ4PBMW3qJaqK23IxOm8zUyG44HR07sa4kZsG5vzZ2bgLTsOdsxbu7NVwmw5B0x/1acxXHnyDKw+/ieY580lEkyTjKX76Zg5n7XIJn7xRPINBNYU2H0L3Cm/SJtOjzKimIXoLRZsXJ6eV/bx9Rd0I2rQfZH/MFWVFMQuPzRD/F9q4B25kYG7RVRMQu5/8M/B4Tl20I+L/NU79DUjDfaXj7hqBzKflMndIIZ5xuQXjfHdiAQjvNdAm9QtD27HH7oT4fUCqXQ5vEiI3o/En+vfc2bnoz7+H+CO586Yg9ZpJ5yuUWlZqTFUmnXIXyVjXVLxkPMVtf7u3+ADJ54qkvrVDQhDev3/6NLqNpYXECrVJ6wXqNqHpz02rw76ME38YU/VZ6IKUgMj1aLp86X+amo7bdDju3E1xG/dE40/mQkFzilfoZr8tuEn8ayFjX84590I4uYvXyETqLjEzd9qvHQTBuzwSPrhCVpWXIevYVRUiN5tYaBfiaOTa/j1/5AbQFrrOjuPogrN6NWZrU4SfZzUX3P7Jfz8vPkB2Fl3Ftzrjh+qTkJq/9ti+biE1FJ2tA3hW6PNp1G3CbToCnbsp2rQvOndDIxWc9/vQDVJvFfguddgJjd3Xu/E74UanoE2HQuplU1yUfh9dcBracjoqdcUvjiWqSUWcnIJlgUVPzYC3tEzBcEW8KyFjpkL4QPCsCN4JUPMXZPT9iBOutHllYcg6drSVoh3myzgrzEviKQo60exM01Ozh3j9XiiSpeT1l1gS8SxrsicK7wD1t+NUHVyWTI58iFNlBNIK4kWqD+/TOVTTaOM+kHoNc7cWAZKQeAptPqp3gzpjKP1zcM3Cah9RdwG0XkDXUEscEk8i2W9yefb55AtCED6o5Dmk+lDI26IxBOEDh0WLw74gnsVxav+CM/YpnDGP4FTtb+oUhglD17FLiKLmS39/cYstPAqlZ85dCdeEmLDBL/LehXu8Hjbba8OuG9oT2Dz3dylAcAfEXzJTqs9I7XngLEbXOKaYuwX/b/p2guRz4M6l6984Can3e1XZKuE9KV2w5O8i3tUrks9TUHNGkyYs5FmBvN8xZwwSLi3NJJ4lkYbJ4FkZCOby9MNQdShS8399sd4yBBiyjl3EB8HtyX+7GYD+7hAf2ISCfz6nHpwlejXsCTceTqgmhONZNLbX76V2dDUHn7tP0WNFvEj9nSANLJLdFWNn1YmmKEebTaPq9Cf91tVHPGOQMU9Dzdng/RV4lofg7jDmeZwydHjX5CtFYsQZSL3Z4zHFNyE3Ey4yaxMPEi4hW9wdNEbhBW7XxNhjd5M3pOXO6fbdqPgm4Iydiox5AmmYjIx7A6fmxEGTamrpP4Z0uqPUnoam3zWzt4U/9LBZBKk6tn/PXX0Cmnwxt3DaniDU/K3XoY5lJyzNze9cxr0XPsgbj8/A8XrYYp+N2Psvv6d+XOk0TvGtAuNeNrPCzDfgWRwC24J40Za/Qfzx3C161uQr112N+H/dK1uL2uGEkap9oT9kXyWMuajmu2vyFL9rKYJT+2c0uAkamZS7OGQAb04wTJC6G4wcQV/xrUPBak8JgxOk8DqFi8anIjXHd/t04l2mpxZahjhDvvJUNQmJqWh8KuBFQjubvOMBqJbT9KdoyzmQ/gAQ8IyH6r/ihLbq93P3FHf+X3LrAp3iulKFjJmKeHp3h1EJNP0h2ngA+RuK+5GxLyCevrVfVFWjqpj5DJzRpuozb8y6d7hNB+V0XtrnqXvMuUJ7QPQmCjr38CE4taeVzRbL0GHEVJ6KBCC0GxLabeDP7VsVGT0FdSNACqS+3xYl+4Jmf4bEVEw6X+eNKTR6JzKEHIX4VkdD20P8STo69xBU/7HPTh1yevv+tXKKjuVH6m4yd1CJZ80dlKbAtxpSdyWafA0TYszzeUkV4l+/X2yyDB+GvGMfDAz6DIM2rZG8UrVpU7U7xJDaC8G/Phq9Ndc1aFmk6mjTyWoIIE4YqbvK6NJkfgTPOJAq0zAj/RH5m4Z7wVm8RNaRxWId+8hAaiiaxePUDZgp5UJEILQLEtqlV8eruwASz5haBN/q4PtNj+62NP0lZD43Dtk3sdcLkuI0gN/kpbtNBxlBsrxO3Q/+9ZG6S01rRoulCNaxjwR8a5oFxS4LvZgG1d1InxtOuLFHoOVMEMdU6oofPEtBw12lW8m5TWjzHyH9idEmApNKWH8T4lu91zZp5rtczL3ATD34e5y683s9/kChmoHkC2hiKmgWCW4Hwa2HlULkUMDmPY0ARBxk1FWYFMh2sz0JgX89CPyuUqYNOJr+BFrOApK5StOMyajKfIs2H1f6+KYjc4vliUUyFu5ctOkgE1bpLZnPoaDzy0C2RNXxIEA1gTbthy44BRJPQvJpo9/UuGtuHcoyUFjHPkKQwHrImEdNxoVnBfCtjdRegNTdOKJu7TV6O3kXJUlD+iMzcy50bPojyHxJ3uIzzaCx+3tvmDOGwuEyyRV8DW40cgOkP+1UYxCDzHdo6yUVs2skYkMxIwjxLoeMOq/SZlSWzOcUdKDig+x34F0u//Z0MUXERN+0vH1rmbWQvIVXQSR8QO/HHihi95G/qUsK4o+gtX8ffvrugxQ7Y7eMLDxLUbA4SDPgjC98rFNv4vL5N5ZQVCyOiIPU35iTwmjT+xGMtsveSGAIpDgW024ia9rzWQYEe/m0DAtUXaOlLoGi1aFSdUguT7xzcZMDnqW6tI3rQGBTCvcH9SPh4pIPpRDf6jBmGhr/F6SmgzMWCe+N+Nfu07gDhmfJXIeiPEjNsGliMRSwjt0y5HFjD0Lr5bkwhot6lkZGXYDkKS4S/2/Q6iNyreQy5iFhkBBSX7xBi4gf6q4zWTFkMBksuYbWVYciZRAIE8/oXIPpIUjVsdByLl0vmiGoOnJQFu8NV6xjtwxp3NhD0HIOHaQSsl+hTQfD6PvzzsCd6uPQ4HZGRdFtNGqTwe27JdsqgY1gzFQ0do/JjvGMR8IH5L2IjDQktBua/d70am2LpWsGQrsjVYdU1rgRxpDXirGMXFRddN5GpmtTFxwI/BanvmsbOUv/YnoQvwzqQmCj8ginlTqnpnIVux7w/WrYLtKOGK0YywgmOwvcPEVXALiQemNAzSmEZmehkZsh+SwgENgGqT4K8Qz+FMbeIJ7RENp1wM7nRu+GyJWYsJgCXrTmTJzwzgNmw2DDOnbL0EUCFJVKKKMaI4C6UdD5ZlGzm2Nr5nu0cfdc/D+X/x6fgiaegDEPI54lO+6vCYg/gSb+A+IzkgmBrYbtDLSvuLFHoPUyuqiWtpyBeuqRwCYVsavS2G9LHtrCU3axZ3AjnrGodwUjrdsFHwR7pyPTGXWbTR/b5As5GQFBQ/siNf9XslReWy7Ite5rfwHKgLagLZch9Ve3O08T2rhnriG4yWfX1OvgXRka7h5WrdvKgel7fBVdWwwCJNDWK0esY7d57O3QzFe4TUeicyagc1bFbTwATX9YabMsRZBR57drvNGGD5zRSPWRfR5fNYU27m3a8ZEyMgQag9hkUzpf9Ng0pF4h/12FC8lpHbpYact5kP2pY5GSxiD9mWn+McJQtxnNzinc6UtbwZ1XeIC8F/yRgXXsOTTzjZktpV7CtC1zIf0W2rg/mnqv0uZZCiC+NZDR/4bgdiCjwBkLVQchYx4tKejVLRLPFOivmoDEc2imWJs6l8KdkMiNababhjHT8pwHIAmxezu8otl5uK1X4zbuidt0OJp41uTyDwM0/Slu4x7o3I3ReVuh8zbBjT3WdceijduBEXyHU5ZQjIhsC1yDUZi6RVUvLse4A4m2XpGbKXX+ISbQ1vON87AMSsS7ElJ3Vb+Mrclni/RXFUj9Fwq0nhMJoJ4VIPtV/sO9q4HG0eQraHYuRS8C7ao6Nf0p2rR/Tl/f6N5oajoENoS664a09o9mvkeb9uuoROrOhZYzcMnihBctyooE0MCmkHyRrndFXgiO3MXTPs/YxXyLbgC2AyYA+4rIhL6OO+AkX6LgDyv9sVWnG6kUmxWKAxRfRJXav5C/QXYQ/BugczdEF5wGrVeQX7I3R06/RlXR+Sfm4vbtxcxikHot1/5w6KKRGwtIDyQgcimqHZuAS+1Z5k6tw+cQAM9iSM2f+tPUQU05QjHrAl+p6jeqmgKmAOVZtRo02EXUkYoEd87F8POgGQhuXvz4wGYw6vKcjkwICBo9muoTIHYXEM/NTvP1b20jhFSfYJ5mvoTsnAL2xNHY3UXtGfQk20KhedA4ZDuGvsSzBDL2Kag6AjwrgmdlqD4eGf0Y4tT3v72DlHKEYpYEfmz3/5nAemUYd2Dxb5iLr+eZtXtXHvzt7yz9g39D8E2E1Ft0zL4IQfXR3YrjO6HfocGtIfs9pun5MqYFXl4lxHbji2MuHtXHI8FtzMs631R1Fora9EUTfjBQ7L1pFtMLttMhTgNScyLUnNivpg0lyuHY801nu3w0InIkcCTAMsvkj0lWEqk5GW16K088NYjUnlERmyyVR0Sg/mYjIRC9E7QJPMsh1cciwe43KBGRDnLAmvmEgh5MqiB8OOJdHgIbI07tom3elQr0rgVTdTlEBMMKEdrZ/J3zhaU8443QmKUk5QjFzASWbvf/pYBZnXdS1UmqOlFVJ44d2/cu8uVGfKsgDfeCb13Mn8UB7+pIw21GS8QyYhHx4lQdjDPuBZzF3scZ82iPnHpenDGFt2kaCe+KhLbv6NTJ9UgN7UD+uL0fqTq8b3ZVGKk6HJwGOs45jXyxjDrf1pZ0k3LM2N8GVhaR5YH/AfsA+5Vh3AFHfBOQ0fcY3QkUKZVOZbH0Eqk62Cya5k1vdE3bwkLH1p5rvqOJZ3LVtQr4kLorEN/K/WTxwCBOA4x+xCyiJh4DUqbReM1JZVHPHCmURQRMRLYHrsakO96mqhcU29+KgFlGOq6bgLlrk9+x+6HqKJya44uOodnZkP7QNOfw/8bKDowABlQETFWfBJ4sx1gWy0hAMp+hEjCLo11ImWbQJRy7eBaHAVBOtAw9bOWpxVIRSsWKbSzZ0nvsvZtlSBKZH+WF+15l1jdzWOaXS7L53hsSqi4clx50+CZQeF4VgNCOA2mNZZgx9Bz7euuBCAQCEAyaR6Hn+f5f6pj2z/1+cy7LoGL6M+9zzu6XoQrJWJJgVYCb/3wnF/3nDCasv0qlzesWIj605m/QcjYd8+O94NQh4f0rZJllODD0HPsSS0A8DokELFgAc+ea54kEJJOLnicSUI7uUG2OvtjFozuv9fZ5IACOjZi10dLYytm7XUYytqi4JxE1z0/f7gL+9b9/4Pe8a7rpOHUQ/B3ijKqUuUVxwruhTh3aejlkv8ZIDe+A1JwyaG22DA2GnmN/+OHu7acKmYy5CCSTXZ1++/+3PW/bN99FotDrkQj8/HPXMZJJ89wtg+Ke39/7C0RfLjRt/w8EwDM4hKWeveflghfsmrokqVnb4quZb4p4xAct56K15+OEB6fKhQS3RIJb5jRQHJunbSkLQ8+xdxcR8PnMo5JkMl0dfvuLRanXC73Wfls0Ck1NhS9ImXyZFz3E5+temCvPRUIDgsq74HwOgSyEF0dGbYfUrNn1jqjYRcnjYeYXs0jG81de/uW6zwiFEqbXJizKOGk5E/X9Mm9j68HCUFZktAw+bDPrkUAm0/EuIt8dTKm7mO5ckPKMoYkExCNIpu/fM/V6yXh8xJJZUnhI4ZDO/StBYYW1kjhhwC8QFAg4EBDwO1D9C2TUtsUvTt157h2+cyHL4Mc2s7Yswus1j6qqAT+1Ru+C1svRbBySCik1/yYVEiGk+g4k5ea9KETnNjFt0tM0ffsTIS846TRBQEjiI4sPlwBZfGQZW5VCUwoxd9H47R+pt8rT3NpxSq+v9GZhv91zDXgh4EVCo/Lv7/XaRX1LUaxjt/Qv8UeABHgEwgLtFXAlCPWAf/0uh2UzWf646onM+X4U2Wz1IiXXFHlTvFcYr9zw2Beok0/LWyCwLTLqqp7drXT3eefXotHiY5egpMt2nJ6vqZRrMb/t4fPZi8sgxjp2C67rEpkfJVwTwusr91eigLZ2G5p/++uPT6d5zgKymRLH5xi77Do4vihkv6GramIAqTrYOMRQyDwqhSpPXPs4d59+D24sjj935zF+vHLWDd8QIAmpbLu7Gi84O+Lor7p/sYnHzZpLsTWavtI55bjcF5LujGPTkQtiHfsIxnVd/nXJI9x/+WMko0nEEbbcd2OOvvIgqkaVKWwT3AYi35BXe1yz4F8z72EfvPQJ8Uj3HdD3n8xE6m9Gm/ZZ1HAaL+CB6mMR/1q9Mr/cLGhs5abTppBKaIeenNscNgtnbQcCwa4HyXR03HXl04JRhXS695lgpV5ve8yfX3x9pr/SkXu4uN/r8Fnb/wfhxcU69hHMNUdP4rl7X+2QE/7c5Ff47O2vuGnGpWWZvUt4P6Nl7qbp2JcyZBxuARXD6roqE5Po5m9/zFINiHdZGPsCJJ5EUzPAGY2EdkPa6aBXmtcefgvH07UuYdMdF+ALFHqzGch8katWLQMiZrbr90Ntben9+4O2dOTeZoJ19wLTlo6cb794vDwXl0LpyIUuEqecAr/+dd/PWwTr2Ecoc3+Yx7R7Xiad6NjQIJ3KMOe7ebz2yNtstucGfT6POHUw+iG05RxIvmxedOqg+kSc8F4Fj9tyv42557wHuuXXg1UBdj/JlOCLBCG0GxLarc+29wex1jiZdNfwUjnKHfqbbDbL07e9wEPXTmX+nAUsv/qy7H/G7qy5xWo9H6x9OnJNTfmN7Q5tF5eepiCXSk3Ot+bSlo6cSJjCyn7GOvZ+JJPO8OpDb/LMnS+STmXYZLf12frATQeFpsmMaR/g8Th52yfHIwle/vfrvXbskflRnrr1Od6c+g7h2hDbHfZb1tvhBkRSJkwidSULcZZaZQmWW20Zvv3wh8I7CQRCAX67/yZs9Pt1e2UrwPef/Mi7z3+EP+hng53WoX6xul6PVYpfbfRLvD4PmVTH2oKXHq1jj2Pm4c87a/eDt7I5+KrKuXtcwYxpHyy8w3vvhY/49M0vOPrKg9nxyK0X7pvNZHlz6jt8+9EPjF6igU33WJ9wTeW/8+1paWxl7o8/M3ap0YwaUwvVw6v1pXXs/UQynuTkLc/hu49/JJGLFX/25pdMueRhrn/zIhoWH7hGuzO//IlP3/iCcE2Iidv8mkAoYMIBRXyrx9u7gplZX8/mhA1OJxFNLiwkevf5j1hj0wmc++ipeDx5YsgFOPXO4zhhg9NJJzs6QXGEcE2ILfbdiN8dtAWrrte75hLpVJrz9rqSGdM+AAXHI9xwwq0ccOYe7Hta/8z4f7nuSiy/+rJ89e43Hd7Xo7ctxvYHzMcXyCIdFpyDUHtWxQuYZkz7gHee/bBD2A4gGUtx00l3sMU+G1FVG2bmlz9x8hZ/J9aaIBlN4A/5ueH4WznzgT+z7naVX+eIzI9y+WE38taT7+ILeEkn00zcZk1Ouf1YauqHj3O3IiT9xP2XPcY3H3y30KkDJKJJmn6azzXH/HNAbEjGk5y588Uc9es/c92xt3Dpwdez52KH89L9/2Xd7dYim8l//x+sDvLb/Tbu1TkvOuBaWpoiHapDE5EEH7z0MU/f/mKPxlppzeU59tpD8Qd9+IOmgjhUE2TsUqOZ9P7lnHjjkb126gD/OPku3pn2Aal4ilQiRSKaJJVIc++FD/HfR9/u9bjFEBEu+s/fmLjNmvgCPqpGhfEHfSy5yqq4dQ8iwZ1wXR/qwtcfh7j4uFWYcnWSdCrfvdXA8cydL5KI5l/M9no9TP/Pe7iuy19/dx5NP80n3hrHdZVENEkiluTcPa/g5/81DrDV8MWMr7n19MlMOvVu3nvxI07e8mzemvoO6WSaWEucdDLD2/95j5O3OBt3KMTDuomdsfcTT9z8DKl41x9jNpPl7afeJR6J93tI5sojbuadZz8glUjTvjnwZYfeyFUvn8uef96Jh66eulBEC8Af8rPyWsszcdv82SrFmDezka/f/w51u4YTEtEk/7rkYbY5ZHM8BXRnstksrz38FlP/+SzR+TEmbrsmu/xxGzbYaSIvTvkv839ewCrrrMgGO03s9R3FQntiSf5z6/N55QkS0SSTz/83G+7SP71uq2rDnPvIX2ia3cxP38xl9BL1LL7cOADuu3gDJp8/i2QsQdstlf+pB3nnmfe55NmzCv7t+pt4a7zgNtd1ScSSvPfCx7Q0tpKvmt3Nujwx6VkOPmfv/jRzIdlslov2v4Y3nniHVCIFqjxy/VNkUxncTt/PTCrDT9/M4Z1nP2Ti73q+qJmMJ/nuox8JVgVYZtWlBoXej3XsfSQZT/LJ618AMGGDVQiETJ/UyPxowWMcj0O0pX8d+/x5C3j1oTdzTr0jqUSKKZc8whlTTmKplZdg8vn/5qdv51JTX8XOx27LPn/dtVcOZMG8Fnx+b5cF2TZmfT2H3RoO4ZQ7jmXjXdfrsC2byXLGjhfx0WufLbzQfPvh9zxy3ZNc/cr57PanHXpsTzEaZzXlzU5pY+aXP3X4/7yZjcQjCcavMA6f39w9tDS20tLYytilRy/83HtCw+L1HUJyLY2t3H3OA6STadrHyVLxFF/M+Ia3n3qP9Xdcp8fnKQfr7bAO773wUYdJQBtu1mX1TVZlxrQPcLP5Z73pZJpvP/i+v81cyCPXPskbT7zTIXRU6HsJZl3pved75thVlXsvfIgplzyC4whu1qVu3ChOveM4Vt9k1T7Z31esY+8Dj97wFLecdi+OIwiQzbocduF+/P747Vl2wtJ8+c43eY/zBrzUj+u5LOv8eQv48p1vqRoV5pfrroRTRM73x89m4Qv48jp2dZUvZ3yDiLD1gZux9YGb9diWfCyx0uJkUsULimKtcc7b60ouf/7sDl/+aXe9xEevfkai3Q8xlUiTTqa5cL+rmfT+FWWxsY26sbU5B5qftgXUbz74nksPvp4fPvsfXq8Hx+Owy/Hb8fmbX/LBy5/g9XlxXWXHo7fm8Iv271OK6FtPvYvX58lrVzyS4LnJL1fMsf/2gE2457wHSCXSHZx3IORn3R3WZokVF2fmFz/hePN/J70+L0utssRAmcu/r3yiy3pAMTw+D+Hank20plz8MPdd9HCH88z+di6nb38B1795EctOWLpH45UTG2PvJS898Dr//MtkEpEEsZY40ZY4iWiSW067lxemvMaBZ+9FINx1FhcIB9j7lF16FErIpDNcfviN7LfsMVywz1X8dZvz2Hepo3j/xY8LHlO/2Cgy6cKqjvWLlV/vO1wTYptDtyAQ8hfdz826/OPkOzu89sj1T3Vw6m2owqyvZvO/r37qsq23tDS28tdtL+hyS96e8SsuxvefzuSkTc/k6/e+I51IE48kiC6Ice8FDzLj2Q9IJzPEIwmSsSRP3PQMlx96Y69tirbEmDHtfVJFLjbFLkT9TagqyLWvX8gam66KL+AjXBsiEPLzu0O24LR7TgBgna3XKHjnIgIb7lJSu6psNM/pWUqhx+Ow6Z4bdnv/VDLNfRc/kvfikYqnmHzBgz06f7mxjr2X3H7GfXk/1GQsye1n3sf6O67D4RfvTyDkJ1wbIlwTwh/0sd1hW7L3X37fo3Ndd9ytvHjfa6QTaaILYu77y4wAACAASURBVMRbEzTNns/fdryImV/MynvMUqsswZIrjc8b7wtWBdjtxPKGNto45sqD2GjXdXE8xeOMX737XYf/tzZFCu7r9XtpaSy8HUyGS3eVSs/6/SV89c43BcMGAB+8+DH/t+mZeS82KF0Kp5LxFK88+AZzvp/XLRva89/H3mb3MYfw7N0vk82T4w4Qqg6y8W5dNXUGknFLj+Gy585m8nc3cvWr5/PAnFs44frDF4amPF4PFz31N6rrqghW5Rx87msgHuHUrc7lzJ0vJtoS63dbxyzZ0O19g1UBfn/8diy18vhuHzPz81kUqp5zXeX9FwpPugYC69h7QTaTZVaRGeTsb+eSSqb5/XHb8cCcWzj1juP4v1uO4Z7vbuLYaw4tGkLpTEtTK8/e/VLeRb5MKs39lz9W8Ngz7/8/wqNCXdIaM+kMY5Ye3W0beoLP7+O0e05k20O2LLqfx7fojqWlsZWahsKpZologmV+2fU2XlV56rbn2G/Zo9khvD87Vh/A1UdPKrq+8e1HP/DVO9/mLRJqTyqRpqUpglsgcygfgZAw+7PbcRf8Hbf1GjTzXcljmmY3c/ZulxXMUALw+j3UL17HpntU1rG3Ub9YHcuvtkzeNaKV1lqee3+4icMu2g9/0L/Q96XiaVKJNDOmvc8ZO17U7zbuecrOBPPcMQOs8OtlmbDBKtQvNopV11uZv959Akdc8ocejR+qDhb9bgSru5/W2x9Yx94LHI+D11+4gYfX58Gbc1yh6hAb/X5dNttzg17F1b/94Ad8gfznymZcPnz5k4LHjl9xMfPl7jSxyKSynL7tBR0cYCqZ5qlbn+PYdf/KQSsfx1VH/4Om2c09treNzfbeqOgFbIOdTKz46TtfYN+lj+LbjwoXIjkeJ29Y6+5zH+DGE29n3o+NqKuk4imeueMFTtjgdJMJkYdvP/wBp7thsB5Um49dMsXNz77Pqr+6B+L3QfQf6M874UaKh2fuOHNK3iyiNjxeh413XY/rXr/QOMpeoKrM/GIWn0//mniBlMVyEqoO4fP78t61pZMZvnznW76Y8XW/2rDT0b9jlYkr5t0284tZ7Hnyztz/0y1c+/qFvSpuG7/CYiyWy2TqjD/kY7vDftvjMcuJdey9QETYcr+NFzrv9ni8Hjbba8MezcqLUV1fVVThsNhMd/rT7xMrkKaWzbpMu+tFwGT2/Gmjv3HNMZP4YvrXzPp6Dk9OepZ9ljqKl/79eq/sXmvL1Vhm1SXzbvMFvPzp5iP5+v3vuO7YW8yCXJHZj8/v47M3vwSgec58Zn4xi6Y58/nXJY90ydJIpzLMm9nIC1NeW/jaz/9r5M6z/8V5e13B20+9i/YgX7m7qWtn3fId9WNTeL1tjjMDJCHyDzRVOCf+o9c+Lzrumluuzt/uO4na0aXL7md+MYt7L3yQ2864l/de+AhV5fPpX3PohD9x9NqncOpW57DnuMO49bTJ/Z6z/e7z+TNoANR1+fSNL/v1/CJSMCyWiqe5/YwpfT7HqXceR7A6iKfdgnEg5GfJlcazy3Hb9nn8vmCzYnrJEZccwHvPf8T/t3fe0VGUXRx+3mxPpQQivYWO0nsVEAjSBRREQURAhA+UooCKdAGp0pugiIIgRZAuTXrvLfTQW3q2z/fHQiRkd7ObbBIS5jnHcySzM++dZPfuO7f87pP7ERifhkk0OjUBOfzpPuFDj61T+I0CZMkZwN2r9xMd0/poaNHL8Rvo+pmbDku8DLEGQo9fA2DllPVcPnE9UcxZskqMfm8yxUOLxNdZu4oQgin/juT7D37k4IZjSJKEJEkUfqMAo9cNxjeLLzP7LUrUVWr/YnDr0h3mDlpC6LGrKFUKrFYrVgcxdX2MgX+W7qZxlzfZ99dhRneYjNUiYTKYUGlULich1VoV3v7exEbG2q0ueoZSZSV7LiMKu58mPVLMQoTafk18QKAfN53Y4MpTniRJzO6/mHVztmAxWbCYLayetoHXCufkzuX7iRqLVv24AYvFSvfx7oUf3CEg0M9WAmjnaUShVOAT4G3nLM9hiDPyIMxxQ9SNc2FYrdYUbcCKVyrCnGMT+H3cao5sOYFWpyGkWwOa9WzkMAyUVsij8VJATGQsGxdsY9vSf0GSeLNDLZp+0hAff8++ac8fvMSghiMwGU3x5YRaHw2v1ynFyLVfOqw5/2fpbqZ8Ope4qMSP30q1gjptq+Ptp2Prr7sTdMi+SEjX+nwx/9Nk2x8dHsOj24/JnjubTbXxKb0qDeLS0atJnq/WqlBpVMRGxrosxlekbEEm/DOMDnl7OJyRamspt//F4qXwwjeLDx2HtuH4jtOc2nmOuGg9ktWayAYvL6jfNoKBU67ZN0YRjFeOv+0eOrjhKEPfdhxznnviBwq9XsDhcYAdy/YwsdusRDtk4SVAwm5SWaNTs+zOPI+/V59x8chlvqj7LYbYxL97d9aWJIl9aw+zcvI6HoQ9onDZArw7qFWSHccWs4Xmfp0c/n013hrWRS9x7WZeIlwdjSeHYlKAj78373zenJmHxjHz8Hja9W+RKh+UElWKMvfkREpVLx5fJqlUKyn3Zmmn59VoVQVHgjBmk4W9aw6xbs4Wp04d4MTOlGX4fbP4UKBUvgROHSC3C1UIGm8NwRUKY9Qb3VJYfXTnCdt/2+NQD0etVVOh4RtUblKOxl3fpHXfpvhl80WtU6NQKciRNztxUXEsHPob+9ceISYiFqslsVMHmzLjrjV+mIz2FvMCpWMnVCWkAqWqF7N7rFrzikk6dYDf7YSkwPbE5WjjplQrufz0iS01KFaxCE27NfyvOgbbF43GW02/Od1d/pz82Hs+YztN5eSus9y5co+9qw8xsMF3bFq83el5CqWC2u9Us1tWrFQpaPB+bfduKIMhh2IyCIuHLePCocvx8fboJzEs+nYZf83ahEqjJiDQj1a9Q6jdtlr846XWW8PwVQP5tuU4rBYrRr0JpVqB1SIhhHAYA32RgBye1+yOiYzlyd1wh8eFEPgEeNNxaBs2L9rhWsjmOaKeRHMr9I7dHSPYum8LlMqboBqixw8f8uRuONuW7mbJ8BWYjK6vKeFFXLQaVbYXf6dqhO/HTs+dtGsES8euYuXEv4iNjMM3qw8dhrThHRe7bZNTYmm1WFNdcfHTyV2o2Kgsf05Zz/0bDylSrgDtB7akWEX7Sc0XOX/wEpsX70xQVixJEoZYI9N6zadWqypOB8L0nNiZk7vOEvko+r9wqbearEFZ+HhMx5Td3EuO7NgzAFdP32D3iv2JQgomvYm7V20f6ptA6LGrbP99D9+u6B/v3MvXf52fQ6ezYcE2rpy4Ts4COVg9fYPT9uoXyZEv0GP3ArYP5+Amowk9ljgMI4TAP9CXb/8YQOkatieUHcv2ur2GAAqWyYfOV2t3EpPOV0vBMvkT/EyhUJA9dzZWTlpnv37dCWqdDp/s+YFbIOkBNSCB3xCE6g2n5yoUCj74ui0ffN3WrTWfEVQgB9FPHJd42sMnwJsi5Qomaz2jwcSJHWcwxhmflg3alzkWQlC1aQWqNq3g9HoRDyNZP28rRzafwC+bL29/0pBKjcuxadF2h9VNCoUX+/46QsNOdRxeN2tQFuafmsT6edvY/vu/CCFo2KkOTbrWf+lkhD2N7NgzAPvWHk6k320PfYyBI1tOsv+vIwkErLIGZaHjkHcAeHI/gjXTN7i1/v51Rzjw99EkP6CuYDaZWTj0N84fuGQ3TKDUKOk5sQtv1PlvWlCTrvW5fjbMrRbxElWL0qBjbeZ/9atdx67SKO3WhetjDUQ+inJ5nWdUbVqREyfqUbDYPbIHXgavANA2QXhlIy46juU/rGXD/G3ERukpXrkInb9rT5laCfVEjAYTx7adIjYyjpLVirqcsH7vy1Z2Y+xKtRJvPy2GOGP8k4uXwguVRsVXv/wvWWJV23/fw5Qec+JDXCajmUad69Jnerdk6QtdO3OTz2t/g9Fgit9VH9l8gqpvV0RCclgKajFbiI10LEz2DJ8AH9oPaEH7AS3cti0jI8fYMwAWi8Xlrkp9jJ6/Zm92eNw/m2+C5iBXMMYZ+W3sn26dYw+LxcLQZmNZNXW9w/sx6U2cfKE2v3GXeuQtliteujcphJegz/RuxEXrCX5hV6pUKcgaFMCEbd/ZbX9Xa1XJ0nvZ/tu/jHp3Ep1LLWJk11gMvIPwyoYhzkDfml+zfPwaHt1+QlxUHMf/Oc1XTUaxe+X++PP3rD5Iu5wfM6bjFCb3mM3Hpfoxot0PDnesz1O3fQ2aftLQlh9QPuuf0FK4bAEWnptKt+87UbB0PnLky86bHWox4+BYytZznp+xx+k955nYbSaxUXHERtr+M+lNbP1lFwuH/ub29QBGvTuJmIiYeKcOtg3KgfVH8A3wThCjfx7hJRzmJmQyuGO/eOQyQ0JG08y3E62zdWHaZ/N4cs9x3DajUqVJeVRuNKc423EqlApa9GqSpJ7Li9y6mHKtlr2rD3F270WnXZ9eCi+e3A2nT7XBdMjfk8Ehozh/MJQp/46i+aeNnQ4HeYZCocAnizd9a37NyZ0vNHAJQZlaJSn8hv2kpEKh4K0P66LSuOfcJQliImxlkQfWHWHUu5MA2LxoB7cv30tULmmINTK5xxwsZguhx68yttPUeIcZF6W3XefvY0zpOTfJtYUQfDqpC3OOTeDD79rRYUhrhq8exPT9YwkI9KdV7xDmnZrE0uuz+ernPskWp1oycoXdnIUh1sjaGRsxxLkXvrp+Loy71x7YTUjrYwxcOXkDna8WL6+Ef3SVRkmxSkUILl/IrfVSwtXTNxjabCwh2g401XXguzYTuHnhVpqt7y4pcuxCiHZCiDNCCKsQIu0UfrBVanxRdxiHNh3HEGuwjWObv42eFQbx5H7qzxRMS4pXDuaNOiVRu+CMVRoV5Rs4n0HZZcS7VA4pj1qnRqVWPi0nVNrK4xyQ3Q3tDUdsWLDN4bCG5zm69STnD4byMOwRhzedYEjT0Wz9ZSftBrRApU7a4SrVCnavPMCjO08SfYmYjWb2rDlI11J9eS9vd75tNY5zBxI2y3Qb14m8xXKj9U1eLbJRbwup3Aq9w8aftjsMIVlMFs4fDOX371fbl1eOM7Jj2V6XQ0N5i+Wm45B36DqqI+Xrv+5xXfBQB2qlYNtB2+u1cEb4/Qi7TX7PiHwUxdS9owmuUAiNTh0/lKRKSAVG/TXYrbVSQujxq/yv+lAObTiK2WjGZDCzd80helcdzI3zL6dzT2mM/TTQBpjjAVtcRpIkJn8yO9EHxmyyEPkoimXjV9Pzh85paVI8+lgDmxftYNuvu7BaJeq2q05ItwYpLoP8btUgFn/zO3/N2YzJYLY1EwkSdWwq1Upa9Q5xei2lSsmwFQO4duYmhzcdR6FUUL1FJX7sPZ+jW04mcoZaHw3t+juPURr1Rixmi1ONeUddsM/bbrVa7e5uZ32+iLrta5C/ZN4ky/RUGhXn9l9yWMZpNVu5ed4mnrZv7WEObzrO53N78tYHNvliH39vZhz6nj2rDrJj2R4kCXIVysnpf89z8egVpxIAz1CoFJw/EOo8SS1sv7cLh0IdXlOtVXHj/C3K1CyR5JqpjW9WXyIe2v+SMZss+Lo5Wq5AqbwOm8W8FF6UqFKUXIWCmHFwHLdC7/D4Tjh5ir6WpmMlAWb1W5RoQyJJEnFReuZ9uYSRa75MU3tcIUWOXZKkc+B623VKuHT0Cr+M+IOz+y6i1qh47KBUzmw0s/23f9PFsUeHx9Cn2mAehD2O/9K5evI6f05dz4yD36doSLJao+KT8R/QdWxHYiJiUWlUTOs1j51/7EOtUWGxWMiSI4Bvln9BYB7XBL4Kls5HwdL/PZYP/Okz+tX8msf3womL0iO8BGqtinrta1Dfwai8sIu3mf6/hRz/5zQAuYsE0eOHD6n6dmLd8GpvV+TS0asJ4qnPEMIWM30xvv4MhVLBvrWH6T//U/rXG4Y+1mDXGWq8NXz4XXu7FTeOMBnMTP5kNrVaV4n/YlKpVdR7tyb13q0Z/7ob52/Rq+Ighw1Pz2MxW/HN6kONlpUIu3THrgOzmCwUrxxM1iD7ncVgSzZnSYVy0+TQoldjFg5dmigcI7wExSoUJnsu1xzujfO3+Pm75RzedByrVcJL4ZWo61mlUfHely3j/50nOBd5gl1XX/QURoOJ03vO2z0mSZJNokKSXoqpSc+TIWLshzYd5/M637D/ryNEPIjkQdgjp/opFlP6zC786ZvfuXftQYInCUOckcd3wpnZ7yePrKFQKPDP5ofOR8uXi/vw67VZfLtiAJN3jeTn0Oku1wjbI0uOAOafmcyABb0I6daANn3fZtLOEfRf0MvuG/futfv0rjqYo1tOYjHbWtlvXrjNyPaT2GVHY6bpJw3ReKsThXw03moadalncwwONsMWs4XYqDiKVijMrKPjeeuDuvhl88VL4YVCpUDnp8XbT0fn4e1p+VkT6nes7ZbCnsVsYf+6o05fk79EHj6f19M2gzWJsJgxzsgbdUvRsncIWh+NnXvW0G5gC7z9dLR6+poXEQJyF3ktTQdUOKP5p40oXjk4ga1qnRq/rL4MWtzbpWuEHr9K7ypfsXvFPmIiYjEbzfG6NVpfjU3i2l/HkKV9XWrOSnWSKFpIj859V0hyxy6E2Aq8ZufQUEmS1ri6kBCiO9AdIH/+/Em8+j+sVisTPprhsNHkRbwUXlQOcX9epyfY8vMOu00tFrNtlqfZZE7RhB17ZM0ZQNYGryf5Osl8GSlmLhgPg/BHeL8PupYIkbDSRKlSUqdtdeq0rZ7kNX8dvRJ9jD7Rm9sQZ2Rmv5+o1aZqAi0O/+x+TNs7hnEfTOPyyeuo1EosJgtvf9KQ7hM+ZOuSXexfd8RueaLwEvETl/IE52LgT5/Z7kuSuH42DKPeSMEy+VE/VcIsX78MZeuW4vj2My6VSVqtktO5ns9o0LE2lRqVZceyPcz6YpHDTYRGpyb06FVer12SafvGMOmTWZzffwmFSoFSpaTDkDa0698cgHrv1WTP6kMc+PtI/Ptco1Oj0qroNq4TM/v9xLUzN8lXIg8tP2tC/hL2xdVSG5Vaxfgt3/LvqoNsWLCNuGg91ZtXouknDfDPlrRIGcC0XvMT/30l8FIIilcqQvuBrSjfoEy8xnt6o9aqCS5fkIuH7ecX3qhb6qXbrYMLjl2SpIaeWEiSpLnAXLBpxbh63qWjV11KuD1D463m/WQ2eqQUZ52cVqtk6/z0sGN3BcmwH+lJD8AI2J50pMiRELcWsi1EiOTZtH/tYYc64tHhsdy5ci/R43Peorn4cf9YHoQ9IvJRFLmLBMWHP+q9W4NF3/yOIc6Y4NFcrVVRqnoxipQtmGgdIUSCcNLzPx++ahBrZ21i1dT1PLkXkWSnbemaxZO6ZQACAv0pWCY/Vovjt7FQiPgv+bxFczFpxwgiH0URExlLznyBCVrdYyJiiXgYicVsxUvphWSVUGlVtOrTlBHv/IDZbMFisnBy51k2LfyHPjO60bjLmy7Z6mkUSgV121Wnbrukv/hfJCYihksO5HqtFolLR65SJaR8Sk30OJ9O6sJXTUYl2lxqvDV8Mq5TOlnlnJc+FGOMMyYqd3oehdLLVnusVlKqejEm7xrp1iQUT5KvuOOdVNagAHTpIL4vSVakiP5AHM+cuo04MJ0A/fpkX1s4U8aTJKfDonPkzU6RsgUTJFs1Og3T9o2hVPViqLUqfAK8UWlU1GhVheGr3U9QKZQKWvdpys+hM/gragllajlOQAbmze5yGeCDsEdM6zXPaRLVZDBTokpwgp/5Z/cjV6GgRPolQ98ey5m9F2xhCbMVySoR/SSGJSP+wBBnjJ+qZDFbMMQZmdZrHo/uJF8rP70wGc1OK6+SGn6SXpSpVZKxG74muHwhFEoFCqWCElWLMmHbsBSFPlOTFG0fhRCtgR+BHMB6IcRxSZIae8SypwSXL+hwQLJSbavJbj+wJWqtCj83s/Ke5qNR7/H9Bz8mevTXPk3opcsjm+kUSI5GkcUhxf6G0LV0cNw5ddpVi5eKfZGsQVnclvoFm8OfvGsk928+5MndcHIVDnJJi9wVPp/bk95Vv0qkdqnWqZm0c4RL13gQ9oie5QcS9dh5CWLZeqVdalu/dPQKV05ed6mz+Hn+WbqbVn1C2Lv6EEe2nsTHX0eDTnUILpd2td3uEhDoT/bc2RwmipPTNJVWvF67JLOOjCc2Kg4hcFr99TKQoh27JEmrJEnKK0mSRpKkIE87dbD9AtsOaG53go5aq6btF83Jnitrujt1gFqtq/LJuPfR+vyXBNLo1HQc2oYmXZ2Piks1pGicdvVY3W+ff0aHwW3wDfBOtDPX6NT8b2Y3t77IboXe4dTuc/ENZjnzBVK8crDHnDrYkp/zTk6iWY+3yJLTn6xBAbT6XwhLr88iVyHXvoQWD1tGTESM05yaQqXgs6ldXbrexcOXcWtUE7Y6+Vuhd+hash8Tu81iw/xt/DllPf1qfc3UXvNe2oSeEIKeEzuj8U6ceNZ4q/lo1HvpYJV7ePvpXnqnDhlEj12SJJaO+ZPl49cgSRJms4UCJfMyaHFvCpVxPRGbVhjiDJzafR7JaqVMrRLp+kaQrOFI92sD9uLLKvDuiJf/0GRf//7NhywYspR/V+7HbLJQokow3b7vFJ/oTIo7V+4x8t1J3DgbhlKtxKg3Ua15RQYu7PVSfoBaBnzotB5frVVRs3UVhvzaz6Xr7V65nx+6ziDWjma+I3S+WoIK5ODmhduJqsO0PhoG/vSZS8nv9GL3yv3M+mIREQ8ikSSJPEVz0XfmJ4m0c2QS46oee4Zw7M8wGkzcuXIPH3+dy7XaMmCNGAZxq4AXnIfwQQSuRyjSp5wuLjqOD4P7EPEwMkG8WqVVUaZmccZvGeb2NSMfRbHll53cvnyX/CXz0vD92k6lXd2lmc/7TuvY3x3Ugo9Gd3RZEMsQZ6BdUDe7lUDxD1rPfUSFEPhl8yEu2uCwuadE1aL8uG+MS+unBIvZwpWT1wHbpC972ueOkCSJB2GPUKoUad5wlJFx1bFnKHVHtUZFgZJ509uMDIfw/wZJKCF2OQgVSBZQ5ERkmZRip/4g7BErJ//FwQ3H0XqrCfm4AY0/etOlwctbl+y2lUu+kIQ06U2c3XuRq6euu1XLfGjjMYa3nQiShCHOiFqrZla/RWTLlYWsQVlo1uMtGn5QJ0WldGXrlebQxmN2QzG5Cufk47Gd3ApBaXQahiztx6j3JmM2mrCYrQhh+3n992tzfPtpHt8Nj/fx/oF+dJ/wIRM/nunQsT+4+ZATO86wfMIawi7dIU/wa7Qf2JJybzqXmnCHbUt3M7PvwvjKH6VKSa8pXWjYqa5L5wshyOlhOWiZ/8hQO3aZlCFZo8B80SYpqyiS4mTu1VPX6Vf7G4x6Y3yCW+OtJn+JPEzePdKueuLzDG/7A//+ecDuMY23mp4Tu9Csx1su2RL5KIqOBT51WrOu9dZQpHxBJmwblmznHnr8Kv1qfZNoHY1OzZDf+lGjhf3Zpklx88It/pyynotHrpAjX3Za92lK2XqlkSSJM3svcOfyPV4rlJMytUoQ9TiaDvl6OJzDmqtIEI/vhCew0UvpRaveIXw6qUuy7Hue/euOMOq9SXbK/9QMWZr834FM0mTKHbtMyhBefqBO3OqfXMZ3mZFIE9sQa+T6uVusmb6R9gOdV9v4ZfNFCGE32eel8MLb33GMXR9rYOnolfw9byvREbEEZPdz2o387JzQY9fYuHA7zXs2cvpaRwSXK8T4rd8yrdc8bpwNQ3gJsr2WlZ6TOqfIoeUrnoe+s7on+rkQgjI1SyTQivHP7kf1FpXYt+Ywxhd27Wqdmgc3HiYqHbSarfw5ZT2GWCP9Zidexx3mD17iUOVxTMep+Gf3JahgDtr1byE7+XRC3rHLJIv7Nx/yUfH/Odw15i4SxOJL051e4+y+C3zZaKTdxiGNTs3yu/PtlgyajCb61vya62duOlzfGYXfKMCc4z+4fd6LhD+IwGyykD1X1jQvZY2NimPo22MIPXYVk9GMUmUbeVihQRmObj3lcKyfUqVg2MqBVGuWvC94i9lCiKaDS5U3Wh8NzT9tTPfxHyT52uRw4VAoi4ct58ze86i1ahp1rkeHwa0TzdbNTMjDrGVSlZiIWBROumiTUnIEKFmtGPU71ko48Fj8N/DYUR347hX7uXn+VrKcOthsTy6GOAP/LN3N7+NWc3bvRbLmDEiX/gRvPx2Tdo5gwrZhfDy6Iz1+6Myv12ZSuFxBp7NazSYLf0xcm+x1n2nzuII+xsDaGRtTRdr2yJYT9H9zGIc2HiM2Mo7w+xGsmraeXpW+JCbCvTGBmRE5FJNKGPVGTAYT3v7eL6WWRErJUzSXQ4EkIQSlaiTdni+EoN/sHlRuUp4/p6zn4a3HFC5bgPe+bEWJKkUdnrd1yS6XB3G/iJfCK8HYPXc4uess37T4HumpPIRap0Lro2XCtmHpktQXQlCiStEEv6vSNUqg1qntKmg+486Veylas/Y7Vdm5fF8iRUZ7mE0W/lm6my4jPFejLkkSEz+elSgcZDKYeXT7MWtmbIwfBfmqIu/YPczty3cZEjKaFv4f8k7Oj+lctI9dpcOMjlqjot3AFvYbx3QqPvimnUvXEUJQq3VVJu0cwc+h0/lu5UCnTh2Sbj13NkJPpVHx7letXLLteSIfRTG02VjbhKNoPRazhbgoPeH3whnUYHiS8f20olLjsmTP7bx80BhnjFdUTA7dJ3xIQKAfKk3SCWiL2UJ0ePKfkOxx/WwYUU+i7R4z6k1sXrzDo+tlRGTH7kEe3nrEZ1W+4vCWEzYZW5OFO1fuMb7LdLb8sjO9zfM4nb5uS5u+TdHo1Hj769D5askaFMCwFQNSdWxZnbbVHc7CVGlUdP/hQz4Y1o4qTcvHa87ofLUE5s3G6PWDk7W7BJ9WhQAAEThJREFU3rRoO5KdHaokQVyMnoMbjjk9P/JRFHvXHuLw5hOJEp6eRKFQMHXPaPyyOe7Ejo3Ws29t8nNcgbmzMe/UJNoPaE7u4NfIniebw/CMzk9L+fqeK7MEMBlMCVRDEx93T54hMyKHYjzIsvFr0Ecnrss2xBqZ3X8x9TvWStYk95QS/iCCG+dukSVngEclX4UQdB3dkWY93mLVtA3EReupHFKeCm+94bE17NGgU21+/34VJuPjBDo1Gm8NzXq+RcteTeJ/FhMRQ+jxa3j76QguXyjZYbGrp284bEwy6U2EXbgNzRMfs1qtzO6/mPVztqB8NtZPgj4zu9Hw/TrJsiUpsuYM4PO5PRnZfqJdoTKT3sTf87dSs1WVZK8REOhPl5Ed6DLSlkjtVflLrp2+mUDzRqFSkDUoS7ITtY4oWCafQzExhUrh8fUyIrJj9yA2zXX7j+QmvYkbZ8PSdHiAUW9kcvc5tilLWhVmk5nXCubkm+VfJHug8YvsXL6XCR/NQHgJDLFG/vltN35ZfZm0cwRBBXJ4ZI0X0flomX5wLNP7LGTP6oMIIdD5anjvq9a0/SKhd/UJ8KFs3ZSLS+Uu8hoqjcpuU5BKqyJHPvud0EtGruDvedsw6k0Jkr1TeswhR97sHrHNEVofTSLBs2ekJIH8IkIIJmwdxvjO0zmy5QTKp7+nMjVLMPjXvm51pLqCSq2i84h3WTB4aYJafVtjlzrJMttXAdmxexBnMrVSEjK2qcHY96dxcOMxTAZTvEO6cS6MfrW/YfHFH1MssBV28bZtCMpzO9m4KD2GGAODQ0az4MzkVEscZ8kRwNe/f45RbyQuWm+bpuRMRjiFNPnoTX4fu8ruMS8vL2q0TFyvbTKaWDFpnd2mKUOskV+G/0HZf1LHsZesGuxQFVWtVVG5iWeH0fhm8WHEmi95ci+cu9cekCNfdgJzp3wAuiNa92mKSq1k0TfL0MfqsZitBJcvxBfzeibYUEiSxL61h1k7cyPh9yMpXasEbT9vRq7CQalm28uAHGP3IG92qIlKY/+70ifAm3xpOPnmztV7HNxwNFF1hCTZEkzr525J8RprZmzEbCdpaLVKPLj5kAuHQlO8RlKotWoCAv1T1akDBObJzsCfPkOtU8cnZzXeGnR+WkatG2xXQuH+jYdOR6u5M5c1OfbWaVsNzQsj/ISw/c7e7u5aR6+7ZA3KQsmqRVPVqT+jWY9GLLszlwVnpvB72Bx+3DcmgSigJEmMeX8qYztN5ciWk1w+cY2/526he9n+nNh5JtXtS09kx+5B2n7RHL9sfokePTU6NX1ndU915/M85w+EOkxoGeOMHNlyMsVrXD11w64WO9gez29dupviNV4m6ravweJLP/L+121p0rU+H4/pwNLrsxN0hT6PbxYfzCbHiTyfVG6k6b/gU5s2jlaFd4A3Gp2agmXyM+XfkWTJEZCqa6cVCoWCoAI5CAhMPPD7wPqj7P/rcILSWLPJgj7GwKh3J2GxvByVTKmBHIrxIAGB/sw6Mo6FQ39j5/K9GPUmilcuwsdj3k/zIQLe/jqnYRBnVROukrdYLk7tPme3nlkCggpkTJGns/svsmHeVh7fDef1OqUI+bh+vOMIzJ2NjkPauHSdgEB/SlUvzqldZ7G+kMTU6NTJljVwFZVaRb/ZPej2fSduXrhNQKAfuYvYxhdbLBbO7LlA5KMogssXStZQlJedv2ZtctjvYIgzcnbvRZflpTMasmP3MNley8qABb0YsKBXutpR3smAa62PhqbdGqR4jZa9Q9j6y65E1SJCQECgH6Ud7GQ9hcViYfOiHaya9jcRDyIpUq4QHYe2cbiDdoXZAxazbvYWjHojklXi+I4z/Db2TybuGJ6s6UQDFvaid9XBxEXr48NiWh8NhV4vQJu+TZNtpzv4ZvGhZNX/egNO7znPiLYT0cfqEUJgNpqp8FZZhizti84n7cc3phYRDyMdHhNCEPXYfi18ZkAOxWRS1BoVX/7cB423OsHMWK2PhqpvV6RS45QnzwqVyU/PyV1Qa1XxuQWdrxb/7P6M+XtoqnbcWq1WvmvzAzP7/cTVUzd4fDecQxuP8VXjkWxdkryegePbT7N+zhYMsYb4MkFjnJHYyDiGtRqfrMlErxXMyU/np/LBt+0oWa0o5d4sw+dzejBp53CXpI09zf0bDxgcMpon98KJi9ITGxmHUW/iyOYTjOk4Nc3tSU3eqFsaldr+3tVkMBNc4eUdI5hSZBGwTM7lE9dYNn4NFw6FkiVnAK37hFCnXXWPxvvv33zI1iW7eHT7MSUqF6VOu2pJSvamlAN/H2XUe5PR2xlQofHWsOL+ArR2umKd8d07E9iz6qDdYzpfLd9v+ppS1ZOWSniZmTPwZ1b/uMHujFW1VsWCs1MyTVjm/s2HdCv9eaIhJmqtiqpvV+TbP/qnk2XJR5btlQGgSNmCDPm1b6qukTNfIB0HuxZ39gQWs4XVP/5t16kDKBReHNl8wu0GnAc3Hzk8JrwET+5FuHW9l5HTu885HJytVCsJPXY10zj2nPkCGbflW0a0+4GY8Fi8FF4YDSaqNavIoMW909u8VEV27BmcR3eeEP0kmlyFg9Ll0T4tkSSJVdPW88uIFU4bbCRJSpZIWImqRbl84prdSh+zyULBMp5p6kpPsgZlcXhMkiS71SUZmZJVi7L0+mzOHwwl8lEURcoVTJNSzPRGduwZlLCLtxnfeTqhx6+hVCuQJGjT7206f9c+Tcsq05LlE9bwy4gVTqckAZjNFsrUcj+B2qZvUzb9tD2RY1eqlZSqXow8wbncvubLRvNejTn2zym7X3xaby2la2bsUJM9hBAJksevApnTA2RyntyP4H81hnL+YCgmg4m4KD36aD0rJ61jdv/F6W1eqmDUG1kyamWSTl2jU1OzZeVkyRnkCc7FsBX9bYJmfjq0Pho0OjXFKwczbMWA5JrucSRJ4u95W+lcrA9ve3fkw+DerJuzxSXFxkqNylLv3ZoJRNSUaiVaXy3fruifaTcFrxpy8jQD8vPw5Swbt9ruoAm1VsVvYXPwz5YyuYCXjXMHLvFV45GJRvE9QwiBSqOiUZd69JrSJUUDq40GE4c3HSfyUTTFKham8Btpp+/jCpN7zOafX/9F/9yXnNZbQ5121Rn402dJni9JEke2nGTtzI08uRfB67VL0qpPiDxcOgMgJ08zMQfWHXE4PUipVnFu/yWqNq2QxlalLmqtKlGTz/MEFczB7GMT8PH3TvlaGtVLO6vz+rkwti7ZnUgqQh9rYOfyvbT9olmSQnNCCCo1KkulRmVT01SZdER+7sqAaBxokduQEumDZAYKvZ7fodPW6NS06NXYI079ZWfPqgMOZRxMRjO7V+5PY4tkXkZkx54BCenawOGgCS8vr2QlDlMLfayBpWNW8n7BT2mdrQtfNR7J2X0X3L6Ol5cXAxb2QuOt5vm+J7VWRc4COWjWI3VErV42TEazw5F0VosVkwNFR5lXC9mxZ0DqvVeDQq8XQOP93878mRb1F/N6onQyZDotMeqNfF7nG34dtZL7Nx4SHR7DkS0nGdRwBP+uOuD29So1KsuknSOo0rQCvll9CMyTjfaDWvLj/jHofO0Pvs5sVGpULsHf/Xm0PhqPy/HKZEzk5GkGxag3smbGRtbN3kx0eCzFKwfT6du2lKpWLL1Ni2f93C3M+mKx3UoWv2y+/HF3vseHMKQ1964/YM2MjZw/eImc+QJp8VmTVP0bSJLEwAbDObf/YoI8i1qromjFIkzeNSJTDk+XseFq8lR27DKpRp9qgzl/0L4mu7efjtHrB1OmVtLqevdvPuTPKes4tOkE3n463v6kIQ061U5R5YsnOLr1JMNajcdsNmM2WhBeArVWRdv+zeky/L1UW9cQZ2DuwF/YtGi7TUYTaPhhXXpO7Oy2jIJMxkKuipFJdwx6+zNCwdai76iy53lCj1+lf91hGA3G+IlA107fYMPCf5iwbRhqTfo4d6PBxIh2ExOUHEpWCUOskRUT/6JmyyoUrVA4VdbW6DT0md6NHhM7E/kwEv/sfpm+61jGPeQYu0yqUaN5JVQOHK/JYKZ4leAkr/F9p2nERsUlGPOmjzFw+fhV/p631WO2usvhjcftDooG272tn5v6tqk1KgLzZJedukwiZMcuk2q07B3ytIolYcxX66OhTb+mSZYn3r58lztX79s9Zog1sm72Zo/Z6i7hDyKdVqc8vP04jS2SkfmPFDl2IcQEIcR5IcRJIcQqIYRjhSGZV46sQVn4cd8YSlYvikpja1v39tfRYXBruo7umOT50eExKB2M9wOcCoGlNkXKFQQHOUq1Tk3p6i9PElvm1SOlMfYtwGBJksxCiHHAYODLlJslk1nIWyw3U/8dzZP7EcRExBJUINDlpGe+EnkcNuN4eYl0rdcvXqkI+Uvm5cqJa5hfFA1TKgjxwIQqGZnkkqIduyRJmyVJeibuvB/Im3KTZDIjWXMGkLdoLrcqWXQ+Wlr2CUFjp9JDpVW5PHs0tRjz9xCKViyCxluNzk+Lzk9LtlxZGL/120wzLFomY+LJqpiuwDIPXk9Ghq6jO2Axmvlr9mZUGhVWqxWtt4Yvf+6TpCZKahMQ6M+0vaO5evoG107fJNtrWXi9TklZIVEm3Umyjl0IsRV4zc6hoZIkrXn6mqFAJaCN5OCCQojuQHeA/PnzV7x+/XpK7JZ5xYgOj+HS0SvofLUUq1REdp4yryRp1qAkhOgM9AQaSJLkUjZLblCSkZGRcZ80aVASQjTBliyt66pTl5GRkZFJXVL6PDsd8AO2CCGOCyFme8AmGRkZGZkUkKIduyRJSbcOysjIyMikKXIGSkZGRiaTITt2GRkZmUxGusj2CiEeABmx3jEQeJjeRqQyr8I9wqtxn/I9Zh6e3WcBSZJyJPXidHHsGRUhxGFXSo0yMq/CPcKrcZ/yPWYe3L1PORQjIyMjk8mQHbuMjIxMJkN27O4xN70NSANehXuEV+M+5XvMPLh1n3KMXUZGRiaTIe/YZWRkZDIZsmN3k1dhapQQop0Q4owQwiqEyFQVB0KIJkKIC0KIUCHEV+ltT2oghFgohLgvhDid3rakFkKIfEKI7UKIc0/fq33T2yZPI4TQCiEOCiFOPL3H4a6eKzt299kClJEk6Q3gIrapUZmN00AbYFd6G+JJhBAKYAYQApQCOgghSqWvVanCIqBJehuRypiB/pIklQSqAZ9lwr+lAagvSVJZoBzQRAhRzZUTZcfuJq/C1ChJks5JknQhve1IBaoAoZIkXZEkyQj8DrRMZ5s8jiRJu4BMPU1bkqQ7kiQdffr/UcA5IE/6WuVZJBvRT/+pevqfS0lR2bGnjK7AhvQ2QsZl8gA3n/t3GJnMGbyKCCEKAuWBA+lriecRQiiEEMeB+8AWSZJcukdPjsbLNLgxNcoM/JqWtnkKV+4xEyLs/EwuC8vACCF8gZVAP0mSItPbHk8jSZIFKPc0l7dKCFFGkqQkcyeyY7eDJEkNnR1/OjWqGbapURnSMSR1j5mUMCDfc//OC9xOJ1tkUogQQoXNqf8qSdKf6W1PaiJJUrgQYge23EmSjl0OxbjJc1OjWshTozIch4CiQohCQgg18B6wNp1tkkkGQggBLADOSZI0Kb3tSQ2EEDmeVd0JIXRAQ+C8K+fKjt19Mv3UKCFEayFEGFAdWC+E2JTeNnmCp0nv3sAmbMm25ZIknUlfqzyPEOI3YB9QXAgRJoT4OL1tSgVqAh8A9Z9+Do8LIZqmt1EeJhewXQhxEtumZIskSetcOVHuPJWRkZHJZMg7dhkZGZlMhuzYZWRkZDIZsmOXkZGRyWTIjl1GRkYmkyE7dhkZGZlMhuzYZWRkZDIZsmOXkZGRyWTIjl1GRkYmk/F/ulM5IpiKp9sAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x2b52c77a3c8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#可以发现结果几乎一致\n",
    "perceptron.plot_decision_boundary(data,target)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "对偶形式的模型参数数量与训练样本量相当,对于海量训练样本而言，这样的参数数量无法接受，而且训练会很慢，那我们进一步考虑一下，这些参数中真正发挥作用的有多少呢？"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "0.22"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.sum(perceptron.alpha!=0)/len(perceptron.alpha)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "在所有训练样本中，真正能对模型提供帮助的其实仅占很少一部分，可以这样理解，当某个离决策超平面近的样本点满足某个条件时(大于0或者小于0)，和该样本点同侧且距离更远的样本自然也满足该条件，所以这些距离超平面远的点其实对模型没有帮助，所以我们只需要找到离决策超平面最近的几个样本点就可以将模型确定，这便是**支撑向量机(SVM)**的思想，我将在后续内容中进行介绍~~~"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
